namespace ext.lib
{
	using System;
	using System.Runtime.CompilerServices;
	using System.Html;
	using System.Collections;
	
	
	/// <summary>Represents two-dimensional rectangular region</summary>
	/// <definedin>Manual\Ext.lib.Region.js</definedin>
	[ScriptName("Region")]
	[ScriptNamespace("Ext.lib")]
	[Imported()]
	public partial class Region
	{
		
		#region Methods
		/// <summary>Checks whether a specified region is contained within this region</summary>
		/// <definedin>Manual\Ext.lib.Region.js</definedin>
		/// <param name="region">Another region which is to be checked for containment</param>
		/// <returns>True if the other region is contained within this region. False otherwise.</returns>
		[ScriptName("contains")]
		public bool Contains(ext.lib.Region region)
		{
			throw new System.Exception("Imported - not implemented");
		}
		
		/// <summary>Calculates the area represented by this region</summary>
		/// <definedin>Manual\Ext.lib.Region.js</definedin>
		/// <returns>Area of the region</returns>
		[ScriptName("getArea")]
		public int GetArea()
		{
			throw new System.Exception("Imported - not implemented");
		}
		
		/// <summary>Calculates the intersecting region of this region and other specified region</summary>
		/// <definedin>Manual\Ext.lib.Region.js</definedin>
		/// <param name="region">Another region</param>
		/// <returns>Intersecting region</returns>
		[ScriptName("intersect")]
		public ext.lib.Region Intersect(ext.lib.Region region)
		{
			throw new System.Exception("Imported - not implemented");
		}
		
		/// <summary>Calculates a union of this region and other specified region</summary>
		/// <definedin>Manual\Ext.lib.Region.js</definedin>
		/// <param name="region">Another region</param>
		/// <returns>Union of this and specified regions</returns>
		[ScriptName("union")]
		public ext.lib.Region Union(ext.lib.Region region)
		{
			throw new System.Exception("Imported - not implemented");
		}
		
		/// <summary>Constrains this region to within the bounds of the specified region</summary>
		/// <definedin>Manual\Ext.lib.Region.js</definedin>
		/// <param name="region">Another region</param>
		[ScriptName("constrainTo")]
		public ext.lib.Region ConstrainTo(ext.lib.Region region)
		{
			throw new System.Exception("Imported - not implemented");
		}
		
		/// <summary>
		/// Adjusts this region by offsetting the co-ordinate components
		/// by the specified amounts
		/// </summary>
		/// <definedin>Manual\Ext.lib.Region.js</definedin>
		/// <param name="t">Top offset</param>
		/// <param name="l">Left offset</param>
		/// <param name="b">Bottom offset</param>
		/// <param name="r">Right offset</param>
		[ScriptName("adjust")]
		public ext.lib.Region Adjust(int t, int l, int b, int r)
		{
			throw new System.Exception("Imported - not implemented");
		}
		
		/// <summary>
		/// Returns the region occupied by the specified element
		/// as returned by Ext.lib.Dom.getXY and el.offsetWidth &amp; el.offsetHeight
		/// </summary>
		/// <definedin>Manual\Ext.lib.Region.js</definedin>
		/// <param name="el">HTML Element whose region is required</param>
		/// <returns>Rectangular region occupied by the specified element</returns>
		[ScriptName("getRegion")]
		public static ext.lib.Region GetRegion(System.Html.Element el)
		{
			throw new System.Exception("Imported - not implemented");
		}
		#endregion
	}
}
